[APACHE DOCUMENTATION]

Compiling and Installing Amiga Apache 1.3

Downloading Apache

Information on the latest version of Apache can be found on the Apache web server at http://www.apache.org/.

Information on the latest Amiga Apache version can be found at http://www.dsdelft.nl/~apache. This will list the current release, any more recent beta-test release, together with details of mirror web and anonymous ftp sites.

If you downloaded the binary file from the Amiga Apache site, skip to Installing Apache. Otherwise read the next section on how to compile the server.

Compiling Amiga Apache

Compiling Amiga Apache consists of four steps: Firstly patch the original apache sources with the Amiga diffs, then select which Apache modules you want to include into the server. Thirdly create a configuration for your operating system. At last compile the executable.

To compile Amiga Apache you need a full GeekGadgets (formerly ADE) environment with the latest Ixemul.library (47.2) includes and the GCC 2.7.2.1 release which can be downloaded at ftp.ninemoons.com/pub/geekgadgets/971125/amiga-bin/

  1. First of all you need to download the original sources and patch them with the Amiga Apache diffs
  2. Then copy the archive & the diffs to the APACHE: directory
  3. Open a shell, cd to APACHE: and unarchive the sources by typing "untgz apache_1.3b3.tar.gz" (Assuming you have the untgz utility, otherwise decompress the archive by typing: "gzip -d apache_1.3b3.tar.gz" and "tar -xvf apache_1.3b3.tar")
  4. Apply the patches by typing "cd apache_1.3b3; gzip -d apache_1.3b3.diffs.gz; patch -l -p1 -i apache_1.3b3.diffs"

    All configuration of Apache is performed in the src directory of the Apache distribution. Change into this directory.

  5. Select modules to compile into Apache in the Configuration file. Uncomment lines corresponding to those optional modules you wish to include (among the Module lines at the bottom of the file), or add new lines corresponding to additional modules you have downloaded or written. (See API.html for preliminary docs on how to write Apache modules). Advanced users can comment out some of the default modules if they are sure they will not need them (be careful though, since many of the default modules are vital for the correct operation and security of the server).

    You should also read the instructions in the Configuration file to see if you need to set any of the Rule lines.

  6. Configure Amiga Apache. Normally you can just type Configure as given below (don't forget to set the S bit by typing in a shell 'protect Configure RWEDS')

    Run the Configure script:

        % Configure
        Using 'Configuration' as config file
         + configured for <whatever> platform
         + setting C compiler to <whatever> *
         + setting C compiler optimization-level to <whatever> *
         + Adding selected modules
         + doing sanity check on compiler and options
        Creating Makefile in support
        Creating Makefile in main
        Creating Makefile in os/unix
        Creating Makefile in modules/standard
       
    This generates a Makefile for use in stage 3. It also creates a Makefile in the support directory, for compilation of the optional support programs.

    (If you want to maintain multiple configurations, you can give a option to Configure to tell it to read an alternative Configuration file, such as Configure -file Configuration.ai).

  7. Type make.
The modules we place in the Apache distribution are the ones we have tested and are used regularly by various members of the Apache development group. Additional modules contributed by members or third parties with specific needs or functions are available at <URL:http://www.apache.org/dist/contrib/modules/>. There are instructions on that page for linking these modules into the core Apache code. However, these modules are not tested for the Amiga version of Apache. But if you find a working module, mail it to: apache@spinnewiel.xs4all.nl

Installing Amiga Apache

You will have a binary file called httpd in the src directory. Copy this binary to APACHE:

If you downloaded the binary file from the Amiga Apache site, unarchive the entire apache_1.3b3.lha file to the APACHE: directory. Open a shell and type:

	lha -mraxe x apache_1.3b3.lha APACHE:
(see the Before install page for instructions)

Things to do before installing Amiga Apache

The Amiga does not have a standard for networking as Unix computers do, there are 2 environments (Amitcp and Miami) and neither of these two TCP/IP programs are capable of running Apache without additional programs. First of all you need to have the latest Ixemul.library and you need a basic install of the Geek Gadgets environment. All programs are downloadable at the Before install page Make sure you have all programs installed before continuing with the apache installation. Instructions on how to install these packages are also on the Before install page.

Installation instructions for Amitcp & Miami

After you installed the GeekGadgets programs you must add a few lines in the Miami and Amitcp configurations.
Amitcp: add the following in your 

	db/services file:

		http 		80/tcp

        and add a user http and a group http to your passwd and groupfile
	by editing the db/passwd and db/group files.

        db/passwd file:

		http|*|1001|45|WebMaster's Tool|apache:|cli

        db/group file:

        	http|*|45|http

        Or use the easy Amitcp config script if you use Amitcp 4.3 +


Miami:  add the following in your 

	database/services menu:

		Name:      http		
		Id:   	   80
		protocol : tcp

	database/users menu:

		Username:  http
		UserId  :  45
  		GroupId :  45
		Realname:  Webmasters Tool
		homedir :  apache
		
		and add a secure password!

	database/groups
	
		groupname: http
		groupid  : 45
		users	 : http	

You need the user http and the group http in the configuration of apache! (in the httpd.conf to be precisely.

Installing httpd

The next step is to install the program and configure it. Apache is designed to be configured and run from the same set of directories where it is compiled. If you want to run it from somewhere else, make a directory and copy the conf, logs and icons directories into it.

The next step is to edit the configuration files for the server. This consists of setting up various directives in up to three central configuration files. By default, these files are located in the conf directory and are called srm.conf, access.conf and httpd.conf. To help you get started there are same files in the conf directory of the distribution, called srm.conf-dist, access.conf-dist and httpd.conf-dist. Copy or rename these files to the names without the -dist. Then edit each of the files. Read the comments in each file carefully. Failure to setup these files correctly could lead to your server not working or being insecure. You should also have an additional file in the conf directory called mime.types. This file usually does not need editing.

First edit httpd.conf. This sets up general attributes about the server: the port number, the user it runs as, etc. Next edit the srm.conf file; this sets up the root of the document tree, special functions like server-parsed HTML or internal imagemap parsing, etc. Finally, edit the access.conf file to at least set the base cases of access.

In addition to these three files, the server behavior can be configured on a directory-by-directory basis by using .htaccess files in directories accessed by the server.


Index